Code first
↔ Schema first
REST API(OpenAPI)
WIP...
GraphQL(GraphQL Schema)
GraphQL Schema を事前に作成せず、バックエンドのコードから自動生成する
フロントエンドは生成された GraphQL Schema を利用する
比較的小規模で、スピーディに開発を行う場合に向いている
メリット
コードとスキーマを常に一致させることができる
バックエンドコード → GraphQL Schema → フロントエンドコード
バックエンドで採用しているプログラミング言語の知識さえあれば、GraphQL の知識はそこまで必要ない
デメリット
GraphQL Schema がバックエンドの資産になる
特定の言語・フレームワークに依存する
e.g.
NestJS
https://docs.nestjs.com/graphql/interfaces#code-first
https://docs.nestjs.com/graphql/resolvers#code-first
gRPC(Protocol Buffers)
WIP...